Filtrowanie anizotropowe
Filtrowanie anizotropowe (ang. anisotropic filtering) – technika poprawy jakości tekstur w trójwymiarowej grafice komputerowej, stosowana zwłaszcza dla obiektów obserwowanych pod małymi kątami, znajdujących się w dużych odległościach od kamery/obserwatora.
Technika ta jest udoskonaleniem filtrowania trójliniowego i polega na uwzględnieniu kierunku obserwacji przy filtrowaniu tekstury. Przykładem zastosowania filtrowania anizotropowego może być renderowanie rozległego, teksturowanego terenu – dzięki zastosowaniu tej techniki obraz terenu wyostrza się ku horyzontowi, a widok wydaje się przez to być bardziej realistyczny.
Opis metody
[edytuj | edytuj kod]Przy obliczaniu wartości koloru dla tekstury w danym punkcie (pikselu na ekranie komputera) wykorzystuje się różne rodzaje filtrowania w celu polepszenia jakości wyświetlania teksturowanego obiektu i uniknięcia niepożądanych efektów, takich jak np. aliasing. Filtrowanie trójliniowe uwzględnia sąsiedztwo danego punktu w teksturze na podstawie odległości od obserwatora. W filtrowaniu anizotropowym sąsiedztwo jest wybierane w ten sposób, aby uwzględnić kierunek do kamery/obserwatora – filtrowanie powinno być intensywniejsze „w głąb ekranu”.
W praktyce filtrowanie anizotropowe polega na stosowaniu różnych mipmap (poziomów szczegółowości) dla poszczególnych kierunków obserwacji tekstury – dla każdego poziomu szczegółowości tworzony jest zestaw mipmap dla każdego z kierunków. Jeżeli tekstura jest wielkości 128×128 to jej mipmapy mogą być wymiarów 128×64, 64×128, itd.
Techniki anizotropowego filtrowania tekstur są znacznie wolniejsze od filtrowania trójliniowego i wymagają większej ilości pamięci, jednakże zapewniają lepszą jakość renderowanego obrazu. Metody te są dzisiaj szeroko wspierane sprzętowo przez karty grafiki 3D.